<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://www.cubicle.co.uk/" elementFormDefault="qualified" targetNamespace="http://www.cubicle.co.uk/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:61565/Engine.svc?xsd=xsd2" namespace="http://schemas.datacontract.org/2004/07/Cubicle.Core.Config" />
  <xs:import schemaLocation="http://localhost:61565/Engine.svc?xsd=xsd5" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:import schemaLocation="http://localhost:61565/Engine.svc?xsd=xsd6" namespace="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" />
  <xs:element name="Process">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="input" nillable="true" type="xs:anyType" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ProcessResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="ProcessResult" nillable="true" type="xs:anyType" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Build">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q1="http://schemas.datacontract.org/2004/07/Cubicle.Core.Config" minOccurs="0" name="config" nillable="true" type="q1:ProcessorConfig" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="BuildResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="Clear">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="ClearResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="List">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="ListResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="ListResult" nillable="true" type="q2:ArrayOfstring" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Rename">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="handle" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="newKey" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="RenameResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="RenameResult" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DisposeRemove">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="handle" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DisposeRemoveResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="DisposeRemoveResult" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Has">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="handle" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="HasResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="HasResult" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Set">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="key" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="item" nillable="true" type="xs:anyType" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SetResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="SetResult" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Get">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="handle" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="GetResult" nillable="true" type="xs:anyType" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetLoadRunnerState">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetLoadRunnerStateResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="GetLoadRunnerStateResult" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetVersion">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetVersionResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="GetVersionResult" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SetLoadRunnerState">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="state" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SetLoadRunnerStateResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetLog">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="i" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetLogResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q3="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="GetLogResult" nillable="true" type="q3:ArrayOfstring" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetId">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetIdResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="GetIdResult" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetHandleTypes">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetHandleTypesResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q4="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="GetHandleTypesResult" nillable="true" type="q4:ArrayOfKeyValueOfstringstring" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMetaDataTypes">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="handle" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMetaDataTypesResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q5="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="GetMetaDataTypesResult" nillable="true" type="q5:ArrayOfKeyValueOfstringstring" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMembers">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="handle" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMembersResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q6="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" minOccurs="0" name="GetMembersResult" nillable="true" type="q6:ArrayOfMemberData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetAssemblyDetails">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetAssemblyDetailsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q7="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" minOccurs="0" name="GetAssemblyDetailsResult" nillable="true" type="q7:ArrayOfAssemblyData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetTypeData">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="target" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetTypeDataResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q8="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" minOccurs="0" name="GetTypeDataResult" nillable="true" type="q8:TypeData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetTypes">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="fullname" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetTypesResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q9="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" minOccurs="0" name="GetTypesResult" nillable="true" type="q9:ArrayOfTypeData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMethods">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="target" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMethodsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q10="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" minOccurs="0" name="GetMethodsResult" nillable="true" type="q10:ArrayOfMethodData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFields">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="target" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFieldsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q11="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" minOccurs="0" name="GetFieldsResult" nillable="true" type="q11:ArrayOfFieldData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetProperties">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="target" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetPropertiesResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q12="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" minOccurs="0" name="GetPropertiesResult" nillable="true" type="q12:ArrayOfPropertyData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetConstructors">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="target" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetConstructorsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q13="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" minOccurs="0" name="GetConstructorsResult" nillable="true" type="q13:ArrayOfConstructorData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetParameterData">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="target" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="methodName" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="offset" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetParameterDataResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q14="http://schemas.datacontract.org/2004/07/Cubicle.Core.DataContracts" minOccurs="0" name="GetParameterDataResult" nillable="true" type="q14:ArrayOfParameterData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="RemoveHandle">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="handle" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="LoadAssembly">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="assembly" nillable="true" type="xs:base64Binary" />
        <xs:element minOccurs="0" name="symbols" nillable="true" type="xs:base64Binary" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="LoadAssemblyResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="LoadAssemblyResult" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="RunByteScript">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="rawScript" nillable="true" type="xs:base64Binary" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="RunByteScriptResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="RunByteScriptResult" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>